﻿using System;
using System.Drawing;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace IsreversI.GameLogic
{
    /// <summary>
    /// Class for passing extra information to events related to the reversi
    /// board.
    /// </summary>
    class BoardEventArgs : EventArgs
    {
        #region member variables
        public readonly BoardModel BoardModel;
        
        /// <summary>
        /// Some point relevant to the event; what this represents exactly
        /// depends on the event.
        /// </summary>
        public Point Point;

        public TileState OldState, NewState;
        #endregion

        #region properties
        #endregion

        #region constructors
        public BoardEventArgs(BoardModel model)
        {
            this.BoardModel = model;
        }

        public BoardEventArgs(BoardModel model, Point p, TileState oldState, TileState newState)
        {
            this.BoardModel = model;
            this.Point = p;
            this.OldState = oldState;
            this.NewState = newState;
        }
        #endregion
    }
}
